/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package terrforming.space.objects;

/**
 * Произвольный космический объект
 */
public abstract class CosmicObject implements Drawable{
    
    /** местоположение в пространстве */
    protected float x,y;
    
    /** масса */
    protected float m;
    
    /** радиус */
    protected float r;
    
    /** флаг уничтожения */
    protected boolean removed=false;

    public boolean isRemoved() {
        return removed;
    }

    public void remove() {
        this.removed = true;
    }
    
    //пересчет состояния
    public abstract void recalculate();

    /** получить координату x */
    public float getX() {
        return x;
    }
    
    /** установить координату x */
    public void setX(float x) {
        this.x = x;
    }

    /** получить координату y */
    public float getY() {
        return y;
    }

    /** установить координату y */
    public void setY(float y) {
        this.y = y;
    }
        
    /** получить массу */
    public float getM() {
        return m;
    }

    /** установить массу */
    public void setM(float m) {
        this.m = m;
    }
    
    /** получить радиус*/
    public float getR() {
        return r;
    }

    /** установить радиус*/
    public void setR(float r) {
        this.r = r;
    }
    
}
